package com.spider.core.scheduled;

import com.spider.common.contents.SinaRegex;
import com.spider.sina.core.SinaPipeline;
import com.spider.sina.core.SinaProcessor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import us.codecraft.webmagic.Spider;

/**
 * < 一句话简述功能 >
 *  新浪微博定时任务
 *
 * @author bf
 * @create 2018/3/29
 * @see [相关类/方法]（可选）
 * @since [产品/模块版本] （可选）
 */
@Component
public class SinaSpiderScheduled {

    @Autowired
    private SinaPipeline sinaPipeline;

    /**
     * 从0点开始,每2个小时执行一次
     *
     */
    @Scheduled(cron = "0 0 0/2 * * ? ")
    public void jianShuScheduled() {
        System.out.println("----开始执行新浪博客定时任务");
        Spider spider = Spider.create(new SinaProcessor());
        spider.addUrl(SinaRegex.URL_INDEX);
        spider.addPipeline(sinaPipeline);
        spider.thread(20);
        spider.setExitWhenComplete(true);
        spider.start();
        spider.stop();
    }

}